The present invention relates generally to network transport protocols and in particular to reliable multicast network transport protocols.
The Internet Protocol (“IP”) is the principal communications protocol for relaying datagrams across network boundaries. Generally, the IP has the task of delivering packets from a source host to a destination host solely based on the IP addresses in the packet headers. More specifically, the IP creates packet structures that encapsulate the data to be delivered. Additionally, the packet structures also define addressing methods that are used to label the datagram with source and destination information. In a multicast network, such as User Datagram Protocol (“UDP”), an addressing method is provided for the delivery of information to a group of destinations simultaneously using the most efficient strategy to deliver the messages over each link of the network only once. Thus, since multicast networks, such as UDP, deliver messages over a network link only once, there remains no guarantee that the datagram packet will be successfully delivered. To ensure the successful delivery of a datagram packet, a reliable multicast protocol may be added as a layer on top of UDP. This reliable multicast protocol adds the ability of UDP to detect lost messages and take corrective action by sending a Negative Acknowledgment (“NAK”) to the host. Once the NAK is received by the host, Repair Data (“RDATA”), consisting of individual packets, are then sent from the host to the designated destination targets. However, the transmission of RDATA can be timely.